package Model.Construction.Services;

import Model.Construction.Industrie.Industrie;
import Model.Construction.Infrastructure;
import Model.Ville;
import java.util.LinkedList;
import java.util.ListIterator;

public abstract class Service extends Infrastructure {
    protected LinkedList<Infrastructure> listeAdjacent;
    protected LinkedList<Industrie> listeIndustrie;
    ListIterator list;

    public Service(int taille_x, int taille_y, Ville v, int prix) {
        super(taille_x, taille_y, v, prix);
        listeIndustrie = new LinkedList<Industrie>();

        listeIndustrie = new LinkedList<Industrie>();
        list = listeIndustrie.listIterator();
    }

    public abstract boolean EstConnecte();

    public void addIndustrie(Industrie a){
        listeIndustrie.add(a);
    }
    public void removeIndustrie(Industrie a){
        boolean trouve = false;
        while(list.hasNext() && !trouve){
            if(list.next().equals(a)){
                list.remove();
                trouve = true;
            }
        }
        if(!trouve){
            System.out.println("Suppression de l'industrie associe impossible");
        }
    }
}
